Time Series Data (সময়ক্রমিক ডেটা) হল এমন ডেটা যা সময়ের সাথে সম্পর্কিত থাকে, যেমন স্টক মার্কেটের মূল্য, আবহাওয়া পরিবর্তন, বা কোনো নির্দিষ্ট পণ্যের বিক্রি। Plotly এর মাধ্যমে আপনি সহজেই সময়ক্রমিক ডেটা ভিজুয়ালাইজ করতে পারেন, যা আপনাকে ট্রেন্ড এবং প্যাটার্নগুলি বোঝাতে সাহায্য করে।
Plotly-তে সময়ক্রমিক ডেটা ভিজুয়ালাইজ করার জন্য সাধারণত Line Chart বা Scatter Plot ব্যবহার করা হয়, যেখানে x-অক্ষটি সময় এবং y-অক্ষটি ডেটার পরিমাণ নির্দেশ করে।
১. Time Series Data Visualization (Line Chart)
Plotly তে Line Chart তৈরি করতে আপনি সময়ক্রমিক ডেটাকে x-অক্ষে এবং পরিমাপ বা মানকে y-অক্ষে রেখেই সহজভাবে একটি লাইন চার্ট তৈরি করতে পারেন। এটি ট্রেন্ড বা সময়ের সাথে ডেটার পরিবর্তন দেখানোর জন্য উপযুক্ত।
উদাহরণ: Time Series Data Line Chart
import plotly.graph_objects as go
import pandas as pd
# উদাহরণ ডেটাসেট তৈরি
data = {'Date': pd.date_range(start='2020-01-01', periods=100, freq='D'),
'Value': [x**0.5 for x in range(100)]}
df = pd.DataFrame(data)
# Line chart তৈরি
fig = go.Figure(data=[go.Scatter(x=df['Date'], y=df['Value'], mode='lines', name='Value over Time')])
# গ্রাফ কাস্টমাইজেশন
fig.update_layout(
title="Time Series Line Chart",
xaxis_title='Date',
yaxis_title='Value',
xaxis=dict(tickformat='%Y-%m-%d', tickangle=45)
)
# গ্রাফ প্রদর্শন
fig.show()
এখানে, Date কলামটি x-অক্ষ হিসেবে এবং Value কলামটি y-অক্ষ হিসেবে ব্যবহৃত হয়েছে। go.Scatter ফাংশনটি দিয়ে আমরা লাইন চার্ট তৈরি করেছি, যেখানে mode='lines' দ্বারা লাইন টাইপ নির্ধারণ করা হয়েছে।
২. Time Series Data Visualization (Scatter Plot)
Scatter Plot ব্যবহার করে আপনি সময়ের সাথে সাথে ডেটার পয়েন্টগুলো দেখতে পারেন। যদিও লাইন চার্ট ডেটার ধারাবাহিকতা দেখায়, স্ক্যাটার প্লটটি পৃথক পৃথক পয়েন্টকে প্রদর্শন করে যা ডেটার প্যাটার্ন দেখাতে সহায়তা করে।
উদাহরণ: Time Series Data Scatter Plot
import plotly.express as px
import pandas as pd
# উদাহরণ ডেটাসেট তৈরি
data = {'Date': pd.date_range(start='2020-01-01', periods=100, freq='D'),
'Value': [x**0.5 for x in range(100)]}
df = pd.DataFrame(data)
# Scatter plot তৈরি
fig = px.scatter(df, x='Date', y='Value', title="Time Series Scatter Plot")
# গ্রাফ প্রদর্শন
fig.show()
এখানে, px.scatter ব্যবহার করে আমরা Scatter Plot তৈরি করেছি, যেখানে প্রতিটি ডেটা পয়েন্ট পৃথকভাবে দেখানো হচ্ছে। এই গ্রাফটি প্যাটার্ন বিশ্লেষণের জন্য উপযোগী।
৩. Multiple Time Series Comparison
যদি একাধিক সময়ক্রমিক ডেটা সিরিজ থাকে, তবে Plotly তে আপনি একাধিক সিরিজ একসাথে প্রদর্শন করতে পারেন। এটি একাধিক ডেটাসেটের তুলনা করতে সহায়তা করে।
উদাহরণ: Multiple Time Series Line Chart
import plotly.graph_objects as go
import pandas as pd
# উদাহরণ ডেটাসেট তৈরি
data = {'Date': pd.date_range(start='2020-01-01', periods=100, freq='D'),
'Value_1': [x**0.5 for x in range(100)],
'Value_2': [x**0.7 for x in range(100)]}
df = pd.DataFrame(data)
# Multiple Line chart তৈরি
fig = go.Figure()
# প্রথম সিরিজ
fig.add_trace(go.Scatter(x=df['Date'], y=df['Value_1'], mode='lines', name='Value 1'))
# দ্বিতীয় সিরিজ
fig.add_trace(go.Scatter(x=df['Date'], y=df['Value_2'], mode='lines', name='Value 2'))
# গ্রাফ কাস্টমাইজেশন
fig.update_layout(
title="Multiple Time Series Comparison",
xaxis_title='Date',
yaxis_title='Value',
xaxis=dict(tickformat='%Y-%m-%d', tickangle=45)
)
# গ্রাফ প্রদর্শন
fig.show()
এখানে, আমরা দুটি আলাদা সময়ক্রমিক ডেটা সিরিজ (Value_1 এবং Value_2) একসাথে দেখিয়েছি। দুটি লাইন একই সময়কাল ধরে ডেটার পরিবর্তনকে তুলনা করছে।
৪. Time Series with Annotations
Annotations ব্যবহার করে আপনি নির্দিষ্ট সময় বা পয়েন্টে বিশেষ মন্তব্য বা ইভেন্ট প্রদর্শন করতে পারেন। এটি গ্রাফের মধ্যে গুরুত্বপূর্ণ তথ্য বা ঘটনার ওপর নজর দিতে সাহায্য করে।
উদাহরণ: Time Series with Annotations
import plotly.graph_objects as go
import pandas as pd
# উদাহরণ ডেটাসেট তৈরি
data = {'Date': pd.date_range(start='2020-01-01', periods=100, freq='D'),
'Value': [x**0.5 for x in range(100)]}
df = pd.DataFrame(data)
# Line chart তৈরি
fig = go.Figure(data=[go.Scatter(x=df['Date'], y=df['Value'], mode='lines', name='Value over Time')])
# Annotation যোগ করা
fig.add_annotation(
x=pd.to_datetime('2020-02-01'),
y=5,
text="Important Event",
showarrow=True,
arrowhead=2
)
# গ্রাফ কাস্টমাইজেশন
fig.update_layout(
title="Time Series with Annotations",
xaxis_title='Date',
yaxis_title='Value',
xaxis=dict(tickformat='%Y-%m-%d', tickangle=45)
)
# গ্রাফ প্রদর্শন
fig.show()
এখানে, add_annotation ফাংশন দিয়ে আমরা একটি নির্দিষ্ট তারিখের ওপর একটি অ্যানোটেশন যোগ করেছি, যেখানে একটি গুরুত্বপূর্ণ ইভেন্ট বা তথ্য দেখানো হচ্ছে।
সারাংশ
Plotly দিয়ে Time Series Data ভিজুয়ালাইজেশন করা খুবই সহজ এবং ইন্টারেকটিভ। আপনি Line Chart, Scatter Plot, এবং Multiple Time Series Comparison সহ আরও অনেক ধরনের গ্রাফ তৈরি করতে পারেন। Plotly এর এই ফিচারগুলো ব্যবহার করে সময়ক্রমিক ডেটার বিশ্লেষণ, ট্রেন্ড, প্যাটার্ন এবং গুরুত্বপূর্ণ তথ্য উপস্থাপন করা অনেক সহজ। Annotations এবং Interactive Features ব্যবহার করে আপনি সময়ের সাথে ডেটার পরিবর্তনকে আরও বিস্তারিত এবং প্রাসঙ্গিকভাবে উপস্থাপন করতে পারবেন।
Read more